package com.jboost.hyk.packagegoods.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jboost.common.system.base.entity.JBoostEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @Description: 套餐商品
 * @Author: cxn
 * @Date:   2022-12-20
 * @Version: V1.0
 */
@Data
@TableName("hyk_package_snapshot")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="hyk_package_snapshot对象", description="套餐快照")
public class PackageSnapshot{

    /**id*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private java.lang.String id;

    /**createTime*/
    @ApiModelProperty(value = "createTime")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date createTime;

    /**createBy*/
    @ApiModelProperty(value = "createBy")
    private java.lang.String createBy;

    /**套餐id*/
    @ApiModelProperty(value = "套餐id")
    private String packageId;

    /**套餐名称*/
    @ApiModelProperty(value = "套餐名称")
    private String name;

    /**金额*/
    @ApiModelProperty(value = "金额")
    private java.math.BigDecimal amount;

    /**包含的知识点列表，用#分割*/
    @ApiModelProperty(value = "包含的知识点列表，用#分割")
    private String knowledgePointIds;

    /**知识 id 列表，用#分割*/
    @ApiModelProperty(value = "知识 id 列表，用#分割")
    private String knowledgeLibraryIds;

    /**课程id列表，用#分割*/
    @ApiModelProperty(value = "课程id列表，用#分割")
    private String courseIds;

    /**服务期数量；单位月*/
    @ApiModelProperty(value = "服务期数量；单位月")
    private Integer serviceTime;

    /**账号数量，默认0*/
    @ApiModelProperty(value = "账号数量，默认0")
    private Integer accountNum;

    /**知识点数量*/
    @ApiModelProperty(value = "知识点数量")
    private Integer pointNum;

    /**知识点有效期限（月）*/
    @ApiModelProperty(value = "知识点有效期限（月）")
    private Integer pointValidTime;

    /**知识点自动生效时间（天）*/
    @ApiModelProperty(value = "知识点自动生效时间（天）")
    private Integer pointAutoTime;

    /**套餐编号*/
    @ApiModelProperty(value = "套餐编号")
    private String code;

    @ApiModelProperty(value = "订单id")
    private String orderId;

}
